Crate zenoh_plugin_trait[−][src]
Expand description
The plugin infrastructure for Zenoh.
To build a plugin, up to 2 types may be constructed :
- A
Plugin
type. - [
PluginLaunch::start
] should be non-blocking, and return a boxed instance of your stoppage type, which should implementPluginStopper
.
Modules
Macros
This macro will add a non-mangled load_plugin
function to the library if feature no_mangle
is enabled (which it is by default).
Structs
Your plugin’s identifier. Currently, this should simply be the plugin crate’s name. This structure may evolve to include more detailed information.
Traits
Zenoh plugins must implement Plugin<Requirements=Vec<clap::Arg<'static, 'static>>, StartArgs=(zenoh::net::runtime::Runtime, clap::ArgMatches)>
Allows a Plugin
instance to be stopped.
Typically, you can achieve this using a one-shot channel or an AtomicBool
.
If you don’t want a stopping mechanism, you can use ()
as your PluginStopper
.